<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <script>
        //声明一个异步函数
        async function foo(){
            //与then方法的返回结果非常相似
            //1、没有返回值时，返回一个promise对象，结果成功且值为undefined
            //[[PromiseState]]: "fulfilled"
            //[[PromiseResult]]: undefined
            //2、有非promise返回值时，结果为成功且值为返回值
            //如：
            //return "ok";
            //则：
            //[[PromiseState]]: "fulfilled"
            //[[PromiseResult]]: "ok"
            //3、如果返回promise对象，则结果由promise的实际结果为准
            //如：
            //return new Promise((resolve,reject)=>{
                //resolve("成功时的数据");
            //});
            //则：
            //[[PromiseState]]: "fulfilled"
            //[[PromiseResult]]: "成功时的数据"
            //如：
            //return new Promise((resolve,reject)=>{
                //reject("失败时的状态");
            //});
            //则：
            //[[PromiseState]]: "rejected"
            //[[PromiseResult]]: "失败时的状态"
            //4、如果抛出异常，则结果为失败
            //如：
            //throw new Error("发生了异常");
            //则：
            //[[PromiseState]]: "rejected"
            //[[PromiseResult]]: Error: 发生了异常
        }

        let result=foo();
        console.log(result);
    </script>
</body>
</html>